package com.kanshu.ksgb.fastread.doudou.module.book.retrofit;

import com.kanshu.ksgb.fastread.doudou.common.net.bean.BaseResult;
import com.kanshu.ksgb.fastread.doudou.common.net.retrofit.FormObjConverterFactory;
import com.kanshu.ksgb.fastread.doudou.common.net.retrofit.Obj;
import com.kanshu.ksgb.fastread.doudou.common.business.commonbean.BookInfo;
import com.kanshu.ksgb.fastread.doudou.module.book.bean.RecentBookInfo;
import com.kanshu.ksgb.fastread.doudou.module.book.bean.ShelfTopData;
import com.kanshu.ksgb.fastread.doudou.module.book.retrofit.requestparams.ShelfRequestParams;

import java.util.List;

import io.reactivex.Observable;
import okhttp3.ResponseBody;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.Query;

/**
 * Created by wcy on 2017\6\19 0019.
 */

public interface ShelfService {
    @GET("app/bookcase/liststop")
    Observable<BaseResult<ShelfTopData>> getShelfBookTop(@Query(value = FormObjConverterFactory.PLACEHOLDER) @Obj ShelfRequestParams params, @Query("__flush_cache") String __flush_cache);

    @GET("app/bookcase/lists")
    Observable<BaseResult<List<BookInfo>>> getShelfBookList(@Query(value = FormObjConverterFactory.PLACEHOLDER) @Obj ShelfRequestParams params, @Query("__flush_cache") String __flush_cache);

    @FormUrlEncoded
    @POST("app/userread/del")
    Observable<ResponseBody> deleteRecentBook(@Field("book_ids") String book_ids);


    @GET("app/userread/lists")
    Observable<BaseResult<List<RecentBookInfo>>> getRecentInfos(@Query(value = FormObjConverterFactory.PLACEHOLDER) @Obj ShelfRequestParams params, @Query("__flush_cache") String __flush_cache);
 }
